package br.edu.unicentro.mymib.mbean.entity;

import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import java.util.Set;

import br.edu.unicentro.mymib.base.Utils;
import br.edu.unicentro.mymib.entity.Comentario;
import br.edu.unicentro.mymib.entity.Post;
import br.edu.unicentro.mymib.entity.Tag;

public class PostEntity {
	private Post post;

	public PostEntity() {
	}

	public String getId() {
		return post.getId() + "";
	}

	public List<String> getTags() {
		List<String> tags = new ArrayList<String>();
		for (Tag t : post.getTags()) {
			tags.add(t.getNome());
		}
		return tags;
	}

	public void setTags(Set<Tag> tags) {
		this.post.setTags(tags);
	}

	public List<ComentarioEntity> getComentarios() {
		ComentarioEntity cme;
		ArrayList<ComentarioEntity> listCme = new ArrayList<ComentarioEntity>();

		for (Comentario com : post.getComentarios()) {
			cme = new ComentarioEntity();
			cme.setComentario(com);
			listCme.add(cme);
		}

		return listCme;
	}

	public void setComentarios(Comentario comentario) {
		try {
			this.post.adicionarComentario(comentario);
		} catch (Exception e) {
			e.printStackTrace();
		}
	}

	public String getMensagem() {
		return post.getMensagem();
	}

	public String getAssunto() {
		return post.getAssunto();
	}

	public String getData() {
		return Utils.formatDateMask(post.getData(), "dd/MM/yyyy");
	}

	public int getAvaliacoesPositivas() {
		return post.getAvaliacoesPositivas();
	}

	public int getAvaliacoesNegativas() {
		return post.getAvaliacoesNegativas();
	}

	public Post getPost() {
		return post;
	}

	public void setPost(Post post) {
		this.post = post;
	}

	public String getAutor() {
		return this.post.getUsuario().getEmail();
	}

}
